Burp Suite Proxy模块
Proxy 基础
Burp Suite 中的 Proxy 模块是其中一个最常用和最强大的模块之一。它允许用户拦截、查看和修改 Web 应用程序的 HTTP 和 HTTPS 流量,使用户能够识别和利用各种不同类型的漏洞。Proxy 模块又分为四部分,分别是 Intercept (拦截),HTTP history,WebSockets history,Option (选项)。
界面介绍

Intercept
Intercept 是 Proxy 模块的核心功能之一,它允许用户拦截应用程序的 HTTP 和 HTTPS 请求,查看和修改请求,然后转发到目标服务器。使用 Intercept,用户可以深入分析应用程序的请求和响应,并查找潜在的漏洞。Intercept 还可以帮助用户快速验证漏洞的利用。
首先我们要进行成功抓包,必须要将浏览器的流量包转移到 burpsuit 上,burpsuit 在进行发包。
- Burpsuit 默认监听本地 8080 端口,我们只需要把浏览器的流量转发到 8080 端口,Burpsuit 即可收到,进行相应的操作。
- 我们一般在浏览器上安装
Proxy SwitchyOmega,进行快速代理,不要慢慢去打开浏览器的设置去配置。

- 用
Open Browser打开一个网站
使用 Buprsuit 进行抓包:如下


Action:

Inspector:
http 请求被拦截下时,右边有个 Inspector 的区域。一共有 Request Attributes, Request Query Parameters, Request Body Parameters, Request Cookies, Request Headers 五个部分,可以展开查看每个部分的内容,也可以手动更改内容值。例如 Request Attributes 中可以选择使用 HTTP/1 或 HTTP/2 协议,或者更改 HTTP Method 等。其他部分也可以直接对参数值进行修改,修改后直接 Apply changes,应用成功后的修改会变成橙色的,然后点击 Forward 观察页面变化。

Http history
WebSockets history
Options
Proxy listeners 代理监听
拦截的代理设置,proxy 就是拦截当前设置的 IP 与 port

Windows 安装证书
如果没有安装 CA 证书就拦截 https 协议的网址,就会出现下面的情况:

- Chrome 浏览器,请先安装插件
Proxy SwitchyOmega并设置好代理

- 选择
BurpSuite代理,然后访问 http://burp 下载证书

和在 Proxy Settings 导出的证书是一样的:

- 双击
cacert.der,然后安装证书;选择本地计算机,然后将证书存储在受信任的证书颁发机构

- 在浏览器的证书管理器中确认是否安装到位,就可以愉快的进行测试了。

- 如果未生效,重启浏览器
Mac OS 安装证书
- 设置好 Burp 代理并开启代理。
- 访问 http://burp/cert 下载证书。
- 双击导入钥匙串访问,或者打开钥匙串导入项目。
- 找到导入的证书,然后开启始终信任。

Android 安装证书
iPhone 安装证书
- 在 iphone 上访问 http://x.x.x.x:8080 点击右上角的 CA Certificate 并允许
- 打开设置 --- 通用 --- 描述文件与设备管理 --- 安装描述文件
- 打开设置 --- 通用 --- 关于本机 --- 信任证书设置 (拉倒最底下)--- 开启信任
Request interception rules 请求拦截规则
添加请求拦截规则设置:可以设置不拦截某些条件,例如不拦截请求地址后缀为 jpg 等,proxy 会自动放行此数据包

设置:只拦截 post 请求

Response interception rules 响应拦截规则

如果需要拦截 response 并修改 response 中的返回值怎么做?
- 第一步仍然是进入 Proxy-Options-Intercept Server Response 设置 response 拦截的选项:

- 勾选
Intercept response based on the following rules - 添加了一条 rule:当 request 被拦截的时候,也拦截 response

- 然后效果如下,你可以修改 request/response 中的值并 Forward
- 拦截 request
- 拦截 response
WebSockets interception rules
针对 WebSocket 的,用的不是太多。

Response modification rules
用的不是太多。

HTTP match and replace rules
自动将请求包的指定内容替换成某些内容

Proxy 模块的其他内容不常用,不做介绍。
Proxy 实战
拦截并修改 request 和 response
- Proxy Settings 配置拦截规则

- 拦截成功后如下,你可以在 Intercept 选项卡页直接编辑请求的参数/headers 等等然后再转发(Forward)报文
修改 request method,GET 为 POST
- 首先进入
Proxy Settings→ Request interception rules 设置 request 拦截的规则:

- 如果不勾选
Intercept requests based on the following rules,无法拦截到任何 http request - 可以添加多条规则,规则之间可以是
与/或的关系,添加并勾选规则后,只有满足这些规则组合的 http request 才会被拦截 - 拦截成功后如下,你可以在 Intercept 选项卡页直接编辑请求的参数/headers 等等然后再转发(Forward)报文
- 在
Open Browser打开 https://www.baidu.com - 点击
Action→Change request method

- 会自动将 GET 修改成 POST

抓 web
抓 App
问题
Proxy 证书问题
